// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.

package org.jetbrains.kotlin.idea.k2.inspections.tests;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.idea.base.plugin.KotlinPluginMode;
import org.jetbrains.kotlin.idea.base.test.TestRoot;
import org.jetbrains.kotlin.idea.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.idea.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("code-insight/inspections-k2/tests")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public abstract class K2MultiFileLocalInspectionTestGenerated extends AbstractK2MultiFileLocalInspectionTest {
    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol")
    public abstract static class UnusedSymbol extends AbstractK2MultiFileLocalInspectionTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/fromKotlinTest")
        public static class FromKotlinTest extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/fromKotlinTest/fromKotlinTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/fromKotlinTestClass")
        public static class FromKotlinTestClass extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTestClass.test")
            public void testFromKotlinTestClass() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/fromKotlinTestClass/fromKotlinTestClass.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/inlineClassesImplInterface")
        public static class InlineClassesImplInterface extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("inlineClassesImplInterface.test")
            public void testInlineClassesImplInterface() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/inlineClassesImplInterface/inlineClassesImplInterface.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/internalConstructorUsedInJava")
        public static class InternalConstructorUsedInJava extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("internalConstructorUsedInJava.test")
            public void testInternalConstructorUsedInJava() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/internalConstructorUsedInJava/internalConstructorUsedInJava.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/jvmField")
        public static class JvmField extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("jvmFieldTest.test")
            public void testJvmFieldTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/jvmField/jvmFieldTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/propertyWithJvmNameAnnotation")
        public static class PropertyWithJvmNameAnnotation extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("propertyWithJvmNameAnnotation.test")
            public void testPropertyWithJvmNameAnnotation() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/propertyWithJvmNameAnnotation/propertyWithJvmNameAnnotation.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/topLevelFunctionWithJvmName")
        public static class TopLevelFunctionWithJvmName extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("topLevelFunctionWithJvmName.test")
            public void testTopLevelFunctionWithJvmName() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/unusedSymbol/topLevelFunctionWithJvmName/topLevelFunctionWithJvmName.test");
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory")
    public abstract static class ReconcilePackageWithDirectory extends AbstractK2MultiFileLocalInspectionTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/addQuotation")
        public static class AddQuotation extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("addQuotation.test")
            public void testAddQuotation() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/addQuotation/addQuotation.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage")
        public static class ChangeToDefaultPackage extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("changeToDefaultPackage.test")
            public void testChangeToDefaultPackage() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToDefaultPackage/changeToDefaultPackage.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackage")
        public static class ChangeToNonDefaultPackage extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("changeToNonDefaultPackage.test")
            public void testChangeToNonDefaultPackage() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackage/changeToNonDefaultPackage.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackageFromRoot")
        public static class ChangeToNonDefaultPackageFromRoot extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("changeToNonDefaultPackageFromRoot.test")
            public void testChangeToNonDefaultPackageFromRoot() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackageFromRoot/changeToNonDefaultPackageFromRoot.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackageFromRootWithPackageKeyword")
        public static class ChangeToNonDefaultPackageFromRootWithPackageKeyword extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("changeToNonDefaultPackageFromRootWithPackageKeyword.test")
            public void testChangeToNonDefaultPackageFromRootWithPackageKeyword() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/changeToNonDefaultPackageFromRootWithPackageKeyword/changeToNonDefaultPackageFromRootWithPackageKeyword.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/innerClass")
        public static class InnerClass extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("innerClass.test")
            public void testInnerClass() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/innerClass/innerClass.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/packageMatchesDirectory")
        public static class PackageMatchesDirectory extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("packageMatchesDirectory.test")
            public void testPackageMatchesDirectory() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/reconcilePackageWithDirectory/packageMatchesDirectory/packageMatchesDirectory.test");
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName")
    public abstract static class RedundantQualifierName extends AbstractK2MultiFileLocalInspectionTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/javaStatic")
        public static class JavaStatic extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/javaStatic/fromKotlinTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/javaStatic2")
        public static class JavaStatic2 extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/javaStatic2/fromKotlinTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifier")
        public static class UnnecessaryNonDirectParentClassQualifier extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifier/fromKotlinTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifierAmbiguous")
        public static class UnnecessaryNonDirectParentClassQualifierAmbiguous extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifierAmbiguous/fromKotlinTest.test");
            }
        }

        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifierDisabled")
        public static class UnnecessaryNonDirectParentClassQualifierDisabled extends AbstractK2MultiFileLocalInspectionTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            private void runTest(String testDataFilePath) throws Exception {
                KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
            }

            @TestMetadata("fromKotlinTest.test")
            public void testFromKotlinTest() throws Exception {
                runTest("../../../idea/tests/testData/multiFileLocalInspections/redundantQualifierName/unnecessaryNonDirectParentClassQualifierDisabled/fromKotlinTest.test");
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("testData/multiFileInspectionsLocal")
    public abstract static class MultiFileInspectionsLocal extends AbstractK2MultiFileLocalInspectionTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate")
        public abstract static class RemoveSingleExpressionStringTemplate extends AbstractK2MultiFileLocalInspectionTest {
            @RunWith(JUnit3RunnerWithInners.class)
            @TestMetadata("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaNotNull")
            public static class JavaNotNull extends AbstractK2MultiFileLocalInspectionTest {
                @java.lang.Override
                @org.jetbrains.annotations.NotNull
                public final KotlinPluginMode getPluginMode() {
                    return KotlinPluginMode.K2;
                }

                private void runTest(String testDataFilePath) throws Exception {
                    KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
                }

                @TestMetadata("javaNotNull.test")
                public void testJavaNotNull() throws Exception {
                    runTest("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaNotNull/javaNotNull.test");
                }
            }

            @RunWith(JUnit3RunnerWithInners.class)
            @TestMetadata("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaNullable")
            public static class JavaNullable extends AbstractK2MultiFileLocalInspectionTest {
                @java.lang.Override
                @org.jetbrains.annotations.NotNull
                public final KotlinPluginMode getPluginMode() {
                    return KotlinPluginMode.K2;
                }

                private void runTest(String testDataFilePath) throws Exception {
                    KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
                }

                @TestMetadata("javaNullable.test")
                public void testJavaNullable() throws Exception {
                    runTest("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaNullable/javaNullable.test");
                }
            }

            @RunWith(JUnit3RunnerWithInners.class)
            @TestMetadata("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaPlatformType")
            public static class JavaPlatformType extends AbstractK2MultiFileLocalInspectionTest {
                @java.lang.Override
                @org.jetbrains.annotations.NotNull
                public final KotlinPluginMode getPluginMode() {
                    return KotlinPluginMode.K2;
                }

                private void runTest(String testDataFilePath) throws Exception {
                    KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
                }

                @TestMetadata("javaPlatformType.test")
                public void testJavaPlatformType() throws Exception {
                    runTest("testData/multiFileInspectionsLocal/removeSingleExpressionStringTemplate/javaPlatformType/javaPlatformType.test");
                }
            }
        }
    }
}
